bool gpsbabel_testmode();
gpsbabel::DateTime current_time();
QDateTime dotnet_time_to_qdatetime(long long dotnet);
-const char* get_cache_icon(const Waypoint* waypointp);
-const char* gs_get_cachetype(geocache_type t);
-const char* gs_get_container(geocache_container t);
+QString get_cache_icon(const Waypoint* waypointp);
+QString gs_get_cachetype(geocache_type t);
+QString gs_get_container(geocache_container t);
QString xml_entitize(const QString& str);
QString html_entitize(const QString& str);
char* strip_html(const utf_string*);
if (deficon) {
icon = gt_find_icon_number_from_desc(deficon, PCX);
} else {
- if (get_cache_icon(wpt)) {
+ if (!get_cache_icon(wpt).isEmpty()) {
icon = gt_find_icon_number_from_desc(get_cache_icon(wpt), PCX);
} else {
icon = gt_find_icon_number_from_desc(wpt->icon_descr, PCX);
return gt_unknown;
}
-const char*
+QString
gs_get_cachetype(geocache_type t)
{
int sz = sizeof(gs_type_map) / sizeof(gs_type_map[0]);
return gc_unknown;
}
-const char*
+QString
gs_get_container(geocache_container t)
{
int sz = sizeof(gs_container_map) / sizeof(gs_container_map[0]);
gbfprintf(file_out, "<td align=\"right\">");
if (wpt->gc_data->terr) {
gbfprintf(file_out, "<p class=\"gpsbabelcacheinfo\">%d%s / %d%s<br>\n",
- (int)(wpt->gc_data->diff / 10), (wpt->gc_data->diff%10)?"½":"",
- (int)(wpt->gc_data->terr / 10), (wpt->gc_data->terr%10)?"½":"");
- gbfprintf(file_out, "%s / %s</p>",
- gs_get_cachetype(wpt->gc_data->type),
- gs_get_container(wpt->gc_data->container));
+ (int)(wpt->gc_data->diff / 10), (wpt->gc_data->diff%10) ? "½" : "",
+ (int)(wpt->gc_data->terr / 10), (wpt->gc_data->terr%10) ? "½" : "");
+ gbfputs(QStringLiteral("%1 / %2</p>")
+ .arg(gs_get_cachetype(wpt->gc_data->type),
+ gs_get_container(wpt->gc_data->container)),
+ file_out);
}
gbfprintf(file_out, "</td></tr>\n");
gbfputint32(waypt_time, file_out);
- if (get_cache_icon(wpt) && wpt->icon_descr.compare(QLatin1String("Geocache Found")) == 0) {
+ if (!get_cache_icon(wpt).isEmpty() && wpt->icon_descr.compare(QLatin1String("Geocache Found")) == 0) {
SymbolId = lowranceusr_find_icon_number_from_desc(get_cache_icon(wpt));
} else {
SymbolId = lowranceusr_find_icon_number_from_desc(wpt->icon_descr);
gbfputint32(2, file_out);
int SymbolId, ColorId;
- if (get_cache_icon(wpt) && wpt->icon_descr.compare(QLatin1String("Geocache Found")) == 0) {
+ if (!get_cache_icon(wpt).isEmpty() && wpt->icon_descr.compare(QLatin1String("Geocache Found")) == 0) {
if (writing_version == 4) {
SymbolId = lowranceusr4_find_icon_number_from_desc(wpt->icon_descr);
} else {
icon_token = mag_find_token_from_descr(waypointp->icon_descr);
}
- if (get_cache_icon(waypointp)) {
+ if (!get_cache_icon(waypointp).isEmpty()) {
icon_token = mag_find_token_from_descr(get_cache_icon(waypointp));
}
}
}
if (wpt->gc_data->terr) {
- gbfprintf(file_out, " - %s / %s - (%d%s / %d%s)\n",
- gs_get_cachetype(wpt->gc_data->type), gs_get_container(wpt->gc_data->container),
- (int)(wpt->gc_data->diff / 10), (wpt->gc_data->diff%10)?".5":"",
- (int)(wpt->gc_data->terr / 10), (wpt->gc_data->terr%10)?".5":"");
+ gbfputs(QStringLiteral(" - %1 / %2 - (%3%4 / %5%6)\n")
+ .arg(gs_get_cachetype(wpt->gc_data->type),
+ gs_get_container(wpt->gc_data->container))
+ .arg((int)(wpt->gc_data->diff / 10))
+ .arg((wpt->gc_data->diff%10) ? ".5" : "")
+ .arg((int)(wpt->gc_data->terr / 10))
+ .arg((wpt->gc_data->terr%10) ? ".5" : ""),
+ file_out);
if (!wpt->gc_data->desc_short.utfstring.isEmpty()) {
char* stripped_html = strip_html(&wpt->gc_data->desc_short);
gbfprintf(file_out, "\n%s\n", stripped_html);
* a GPX file from geocaching.com. Thus we sort of make all the other
* formats do lookups based on these strings.
*/
-const char*
+QString
get_cache_icon(const Waypoint* waypointp)
{
if (!global_opts.smart_icons) {
break;
case XcsvStyle::XT_GEOCACHE_CONTAINER:
/* Geocache Container */
- buff = QString::asprintf(fmp.printfc.constData(), gs_get_container(wpt->gc_data->container));
+ buff = QString::asprintf(fmp.printfc.constData(), CSTR(gs_get_container(wpt->gc_data->container)));
field_is_unknown = wpt->gc_data->container == gc_unknown;
break;
case XcsvStyle::XT_GEOCACHE_TYPE:
/* Geocache Type */
- buff = QString::asprintf(fmp.printfc.constData(), gs_get_cachetype(wpt->gc_data->type));
+ buff = QString::asprintf(fmp.printfc.constData(), CSTR(gs_get_cachetype(wpt->gc_data->type)));
field_is_unknown = wpt->gc_data->type == gt_unknown;
break;
case XcsvStyle::XT_GEOCACHE_HINT: